package com.wiwf.model.security.service;

import java.util.HashMap;
import java.util.Map;

import com.wiwf.model.bean.SysUserVoto;

/**
 * @author kehui
 */
public interface SysTokenService {
	
	static final Map<String, SysUserVoto> SYS_USERS = new HashMap<String, SysUserVoto>();
	
	/**
	 * 创建 token
	 * @return
	 */
	String createToken();

	/**
	 * 将用户和信息 添加到 token 中
	 * @param key
	 * @param val
	 * @return
	 */
	Boolean addTokenUser(String key, SysUserVoto val);

	/**
	 * 将用户和信息 更新到 token 中
	 * @param key
	 * @param val
	 * @return
	 */
	Boolean updateTokenUser(String key, SysUserVoto val);

	/**
	 * 从 token 中获取用户信息
	 * @return
	 */
	SysUserVoto getTokenUser();
	SysUserVoto getTokenUser(String token);

	/**
	 * 删除 token
	 * @return
	 */
	Boolean delTokenUser();

	/**
	 * 更新 token 时效
	 * @param key
	 * @param timeSeconds
	 * @return
	 */
	Boolean updateTokenUserExpire(String key, int timeSeconds);

	/**
	 * 获取自己的 token
	 * @return
	 */
	String getToken();
	
}
